package com.example.tests;

import static org.hamcrest.Matchers.equalTo;
import static org.junit.Assert.assertThat;
import java.util.Random;

import org.testng.annotations.Test;

import com.example.utils.SortedListOf;

public class ContactRemovalTests extends TestBase{

	 @Test
	  public void deleteContact() throws Exception {
	    // save old state
		SortedListOf<ContactData> oldList = app.getContactHelper().getContacts();
		
		// define test data
		Random rnd = new Random();
		int contactIndex = rnd.nextInt(oldList.size()-1);

		// run test
		app.getContactHelper().removeContact(contactIndex);
		
		// save new state
		SortedListOf<ContactData> newList = app.getContactHelper().getContacts();
		
		// compare states
		assertThat(newList, equalTo(oldList.without(contactIndex)));	
	  }
}
